﻿using OperationPlugins.Validators;
using TimeProject.Engine;
using TimeProject.Engine.DbContent;

namespace TimeProject.Validators
{
    public abstract class TimeProjectValidatorBase<T> : AbstractValidator
    {
        /// <summary>
        /// Gets and sets the plugin input value.
        /// </summary>
        protected new T Value
        {
            get { return (T)base.Value; }
        }

        protected new TimeProjectOperationContext Context
        {
            get { return base.Context as TimeProjectOperationContext; }
        }

        public TimeProjectDbContext Db
        {
            get { return Context.Db; }
        }
    }
}
